
const timers = {}
function debounce(func, delay, key) {
  const that = this
  return function() {
    if (timers[key]) {
      clearTimeout(timers[key])
    }
    timers[key] = setTimeout(() => {
      func.apply(that, arguments)
    }, delay)
  }
}

export default debounce

//  // 防抖输入框 getList
//     debounceGetList() {
//       //   // 传参数/不传参数都可以这么写
// //   // const debounceFn = this.$debounce(function() {
// //   //   this.getList(tag)
// //   // }, 3000, 'getList')

// //   // 不传参数
// //   const debounceFn = this.$debounce(
// //     this.getList
// //     , 3000, 'getList')
// //   debounceFn()
//       const debouncedFn = this.$debounce(
//         this.getList
//         , 500, 'getList')
//       debouncedFn()
//     },
